package com.wish.finance.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 
 * </p>
 *
 * @author 
 * @since 2022-03-29
 */
@Data
@ToString
@TableName("t_cw_deal_per_day")
@ApiModel(value = "CwDealPerDay对象", description = "")
public class CwDealPerDay implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("商户id")
    private Long businessId;

    @ApiModelProperty("商户名称")
    private String businessName;

    @ApiModelProperty("1：线上无金融属性的  2：线上有金融属性的(如：租约保理) 3：线下(商户既有线上1，也有线下3，海链财务只有线上1,2) ")
    private Integer onlineFlg;

    @ApiModelProperty("统计日期(交易日期)")
    private LocalDate dealDate;

    @ApiModelProperty("操作类型,1：收入，2：支出")
    private Integer operationType;

    @ApiModelProperty("总计")
    private BigDecimal total;

    @ApiModelProperty("押金")
    private BigDecimal deposit;

    @ApiModelProperty("租金")
    private BigDecimal rent;

    @ApiModelProperty("电费")
    private BigDecimal electricityFee;

    @ApiModelProperty("水费")
    private BigDecimal waterFee;

    @ApiModelProperty("宽带费")
    private BigDecimal netFee;

    @ApiModelProperty("燃气费")
    private BigDecimal gasFee;

    @ApiModelProperty("有线电视费")
    private BigDecimal cableFee;

    @ApiModelProperty("商户充值金额(在海链财务报表中算作收入的一部分）")
    private BigDecimal czFee;

    @ApiModelProperty("其他")
    private BigDecimal otherFee;

    @ApiModelProperty("预留字段1")
    private BigDecimal reserve1;

    @ApiModelProperty("预留字段2")
    private Integer reserve2;

    @ApiModelProperty("预留字段3")
    private String reserve3;

    @ApiModelProperty("预留字段4")
    private String reserve4;

    @ApiModelProperty("预留字段5")
    private String reserve5;

    @ApiModelProperty("删除标识：0:未删除，1：删除")
    private Boolean delFlg;

    @ApiModelProperty("创建用户ID")
    private Long createUserid;

    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    @ApiModelProperty("更新用户ID")
    private byte[] updateUserid;

    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;

    //开始时间
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date starttime;
    //结束时间
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date endtime;

}
